Machine-independent Virtual Memory Management for Paged Uniprocessor And
نویسندگان
چکیده
We describe the facilities provided by PLATINUM, a multiprocessor micro-kernel, to support user-level exception handling. The principal design goal for these facilities is to provide a very simple mechanism with su cient exibility and e ciency to experiment with the implementation of a wide variety of exception-driven, user-level services in a parallel system. These services provide conventional exception handling, an interface between parallel programs and debugging or performance monitoring tools, user-level paging and I/O services, and support for user-level lightweight process packages. The exception handling facility is based on fast message passing using a recon gurable hierarchy of mailboxes. The mechanisms we describe have performance comparable to their uniprocessor signal handling under Unix, and retain that performance when used on a multiprocessor to support the kind of exception-driven services demanded by a parallel programming environment. 1 Flexible Exception Handling on Multiprocessors The practice of structuring an operating system as a relatively small kernel (popularly called a \micro-kernel") augmented by a collection of server processes continues to be an active topic of research [Ras86, Mul87]. Although the modularity of this approach yields software engineering advantages such as improved comprehensibility, ease of maintenance, and reliability, the increased number of inter-module control transfers in such a system can put it at a performance disadvantage with respect to more monolithic designs[ALBL91]. On a multiprocessor, however, the modularity of the micro-kernel approach can be exploited to take advantage of parallelism by replicating and distributing servers across multiple processors. Because many operating system services are exception-driven, we address the issue of providing a kernel-de ned facility to support modular and e cient exception handling in a multiprocessor micro-kernel system. In this paper we present a set of requirements for such facilities, a description of our solution to the problem, an evaluation of that solution, and a discussion of remaining problems and directions for future research. The combination of the micro-kernel design and the emphasis on logical and physical parallelism requires exception handling that is exible, e cient, and allows maximum parallelism on a multiprocessor. Some of the many potential applications for user-level exception handling on a multiprocessor include: 1. Providing an error recovery and/or cleanup mechanism, This material is based upon work supported by the National Science Foundation under Grant number CDA8822724. The Government has certain rights in this material. To appear in Proceedings of SEDMS-III, Newport Beach, CA. March 1992.
منابع مشابه
Machine-Independent Virtual Memory Management for Paged Uniprocessor and Multiprocessor
Recent technological advances in memory management architectures, multiprocessor systems, and software architectures dictate a reevaluation of the virtual memory management support provided by an operating system. The problems posed by multiprocessor systems and the portability issues raised by the large variety of memory management units available have not been satisfactorily addressed by past...
متن کاملPaged Binding Array: Environment Representation for And-Or Parallel Prolog
We show that to exploit both Independent And-and Or-parallelism from Prolog programs independent goals should be recomputed (vs their solutions reused). We present an abstract model, called the Composition-Tree, for representing and-or parallelism in Prolog Programs. The Composition-tree closely mirrors sequential Prolog execution (by recomputing independent goal rather than re-using them). We ...
متن کاملMC 68030 : The second generation 32 - bit microprocessor
The MC68030 is a virtual memory microprocessor based on an MC68020 core with additional enhanced performance features. Increased internal parallelism is provided by multiple internal data buses and address buses, and a versatile bus controller that supports synchronous burst cycle accesses in order to maximize performance with paged mode, nibble mode, and static column DRAM technology, or even ...
متن کاملCompilation for Scalable, Paged Virtual Hardware
Reconfigurable computing devices such as field programmable gate arrays (FPGAs) have demonstrated 10x-100x gains in performance and functional density over microprocessors for a variety of applications [13], yet their commercial use is limited primarily to serving as single-task ASIC replacements, which largely ignores their programmability and severely limits their applicability. SCORE (Stream...
متن کاملAnalytical evaluation of an innovative decision-making algorithm for VM live migration
In order to achieve the virtual machines live migration, the two "pre-copy" and "post-copy" strategies are presented. Each of these strategies, depending on the operating conditions of the machine, may perform better than the other. In this article, a new algorithm is presented that automatically decides how the virtual machine live migration takes place. In this approach, the virtual machine m...
متن کاملTiled Virtual Memory for UNIX
M.Ly computer applications require the manipulation of large data arrays. These applÍcations can behave b-adly under a paged virtual memory (vM) system, due to poor memory access _p¿tterns. One solution to this problem is tiling, a technique in which the arays are partitioned into sub-arrays that map one-to-one with VM -pages. Software implementations of tiling have been described in the litera...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2007